Expand description
? formatting.
Debug should format the output in a programmer-facing, debugging context.
Generally speaking, you should just derive a Debug implementation.
When used with the alternate format specifier #?, the output is pretty-printed.
For more information on formatters, see the module-level documentation.
This trait can be used with #[derive] if all fields implement Debug. When
derived for structs, it will use the name of the struct, then {, then a
comma-separated list of each field’s name and Debug value, then }. For
enums, it will use the name of the variant and, if applicable, (, then the
Debug values of the fields, then ).
Stability
Derived Debug formats are not stable, and so may change with future Rust
versions. Additionally, Debug implementations of types provided by the
standard library (libstd, libcore, liballoc, etc.) are not stable, and
may also change with future Rust versions.
Examples
Deriving an implementation:
#[derive(Debug)]
struct Point {
x: i32,
y: i32,
}
let origin = Point { x: 0, y: 0 };
assert_eq!(format!("The origin is: {origin:?}"), "The origin is: Point { x: 0, y: 0 }");Manually implementing:
use std::fmt;
struct Point {
x: i32,
y: i32,
}
impl fmt::Debug for Point {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
f.debug_struct("Point")
.field("x", &self.x)
.field("y", &self.y)
.finish()
}
}
let origin = Point { x: 0, y: 0 };
assert_eq!(format!("The origin is: {origin:?}"), "The origin is: Point { x: 0, y: 0 }");There are a number of helper methods on the Formatter struct to help you with manual
implementations, such as debug_struct.
Types that do not wish to use the standard suite of debug representations
provided by the Formatter trait (debug_struct, debug_tuple,
debut_list, debug_set, debug_map) can do something totally custom by
manually writing an arbitrary representation to the Formatter.
impl fmt::Debug for Point {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "Point [{} {}]", self.x, self.y)
}
}Debug implementations using either derive or the debug builder API
on Formatter support pretty-printing using the alternate flag: {:#?}.
Pretty-printing with #?:
#[derive(Debug)]
struct Point {
x: i32,
y: i32,
}
let origin = Point { x: 0, y: 0 };
assert_eq!(format!("The origin is: {origin:#?}"),
"The origin is: Point {
x: 0,
y: 0,
}");Required methods
Formats the value using the given formatter.
Examples
use std::fmt;
struct Position {
longitude: f32,
latitude: f32,
}
impl fmt::Debug for Position {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
f.debug_tuple("")
.field(&self.longitude)
.field(&self.latitude)
.finish()
}
}
let position = Position { longitude: 1.987, latitude: 2.983 };
assert_eq!(format!("{position:?}"), "(1.987, 2.983)");
assert_eq!(format!("{position:#?}"), "(
1.987,
2.983,
)");Trait Implementations
Implementations on Foreign Types
1.10.0 · sourceimpl Debug for SocketAddr
impl Debug for SocketAddr
1.36.0 · sourceimpl<'a> Debug for IoSliceMut<'a>
impl<'a> Debug for IoSliceMut<'a>
1.16.0 · sourceimpl Debug for ChildStdout
impl Debug for ChildStdout
1.12.0 · sourceimpl Debug for RecvTimeoutError
impl Debug for RecvTimeoutError
1.8.0 · sourceimpl Debug for SystemTimeError
impl Debug for SystemTimeError
1.10.0 · sourceimpl Debug for FromBytesWithNulError
impl Debug for FromBytesWithNulError
1.16.0 · sourceimpl<'_, T> Debug for RwLockWriteGuard<'_, T> where
T: Debug,
impl<'_, T> Debug for RwLockWriteGuard<'_, T> where
T: Debug,
sourceimpl<'_, K, V, S> Debug for RawOccupiedEntryMut<'_, K, V, S> where
K: Debug,
V: Debug,
impl<'_, K, V, S> Debug for RawOccupiedEntryMut<'_, K, V, S> where
K: Debug,
V: Debug,
1.10.0 · sourceimpl Debug for UnixListener
impl Debug for UnixListener
1.16.0 · sourceimpl<'_, T> Debug for MutexGuard<'_, T> where
T: Debug + ?Sized,
impl<'_, T> Debug for MutexGuard<'_, T> where
T: Debug + ?Sized,
1.54.0 · sourceimpl<K, V> Debug for IntoValues<K, V> where
V: Debug,
impl<K, V> Debug for IntoValues<K, V> where
V: Debug,
1.13.0 · sourceimpl Debug for DefaultHasher
impl Debug for DefaultHasher
1.16.0 · sourceimpl<'_> Debug for StdoutLock<'_>
impl<'_> Debug for StdoutLock<'_>
sourceimpl<'_, K, V, S> Debug for RawEntryBuilder<'_, K, V, S>
impl<'_, K, V, S> Debug for RawEntryBuilder<'_, K, V, S>
sourceimpl<T> Debug for TrySendError<T>
impl<T> Debug for TrySendError<T>
sourceimpl Debug for Ipv6MulticastScope
impl Debug for Ipv6MulticastScope
1.16.0 · sourceimpl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
1.6.0 · sourceimpl Debug for DirBuilder
impl Debug for DirBuilder
1.7.0 · sourceimpl Debug for StripPrefixError
impl Debug for StripPrefixError
1.16.0 · sourceimpl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
1.16.0 · sourceimpl<T> Debug for JoinHandle<T>
impl<T> Debug for JoinHandle<T>
1.58.0 · sourceimpl Debug for FromVecWithNulError
impl Debug for FromVecWithNulError
sourceimpl<W> Debug for IntoInnerError<W> where
W: Debug,
impl<W> Debug for IntoInnerError<W> where
W: Debug,
1.16.0 · sourceimpl<'_> Debug for StderrLock<'_>
impl<'_> Debug for StderrLock<'_>
sourceimpl<'a> Debug for SocketAncillary<'a>
impl<'a> Debug for SocketAncillary<'a>
1.7.0 · sourceimpl Debug for IntoStringError
impl Debug for IntoStringError
1.16.0 · sourceimpl Debug for ChildStdin
impl Debug for ChildStdin
sourceimpl<'a> Debug for PrefixComponent<'a>
impl<'a> Debug for PrefixComponent<'a>
1.16.0 · sourceimpl Debug for RandomState
impl Debug for RandomState
1.12.0 · sourceimpl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug,
impl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug,
1.8.0 · sourceimpl<T> Debug for SyncSender<T>
impl<T> Debug for SyncSender<T>
sourceimpl<T> Debug for TryLockError<T>
impl<T> Debug for TryLockError<T>
1.57.0 · sourceimpl<'a> Debug for CommandArgs<'a>
impl<'a> Debug for CommandArgs<'a>
1.16.0 · sourceimpl Debug for BarrierWaitResult
impl Debug for BarrierWaitResult
sourceimpl<'_, K, V, S> Debug for RawEntryBuilderMut<'_, K, V, S>
impl<'_, K, V, S> Debug for RawEntryBuilderMut<'_, K, V, S>
1.5.0 · sourceimpl Debug for WaitTimeoutResult
impl Debug for WaitTimeoutResult
1.13.0 · sourceimpl<'_> Debug for Components<'_>
impl<'_> Debug for Components<'_>
sourceimpl<'_, K, V> Debug for OccupiedError<'_, K, V> where
K: Debug,
V: Debug,
impl<'_, K, V> Debug for OccupiedError<'_, K, V> where
K: Debug,
V: Debug,
1.12.0 · sourceimpl<'_, K, V> Debug for OccupiedEntry<'_, K, V> where
K: Debug,
V: Debug,
impl<'_, K, V> Debug for OccupiedEntry<'_, K, V> where
K: Debug,
V: Debug,
sourceimpl<'_, K, V, S> Debug for RawVacantEntryMut<'_, K, V, S>
impl<'_, K, V, S> Debug for RawVacantEntryMut<'_, K, V, S>
1.8.0 · sourceimpl Debug for SystemTime
impl Debug for SystemTime
1.56.0 · sourceimpl Debug for WriterPanicked
impl Debug for WriterPanicked
1.16.0 · sourceimpl Debug for ChildStderr
impl Debug for ChildStderr
sourceimpl<'scope, T> Debug for ScopedJoinHandle<'scope, T>
impl<'scope, T> Debug for ScopedJoinHandle<'scope, T>
1.10.0 · sourceimpl Debug for UnixStream
impl Debug for UnixStream
sourceimpl<W> Debug for LineWriter<W> where
W: Write + Debug,
impl<W> Debug for LineWriter<W> where
W: Write + Debug,
1.16.0 · sourceimpl<'_> Debug for SplitPaths<'_>
impl<'_> Debug for SplitPaths<'_>
sourceimpl<T> Debug for SyncOnceCell<T> where
T: Debug,
impl<T> Debug for SyncOnceCell<T> where
T: Debug,
sourceimpl Debug for BacktraceFrame
impl Debug for BacktraceFrame
1.57.0 · sourceimpl<'a> Debug for CommandEnvs<'a>
impl<'a> Debug for CommandEnvs<'a>
1.16.0 · sourceimpl<'_, T, S> Debug for SymmetricDifference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for SymmetricDifference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
1.10.0 · sourceimpl Debug for UnixDatagram
impl Debug for UnixDatagram
1.26.0 · sourceimpl Debug for AccessError
impl Debug for AccessError
sourceimpl<T> Debug for PoisonError<T>
impl<T> Debug for PoisonError<T>
1.16.0 · sourceimpl<'_, T> Debug for RwLockReadGuard<'_, T> where
T: Debug,
impl<'_, T> Debug for RwLockReadGuard<'_, T> where
T: Debug,
sourceimpl<'_> Debug for BorrowedFd<'_>
impl<'_> Debug for BorrowedFd<'_>
sourceimpl<'_, K, V, S> Debug for RawEntryMut<'_, K, V, S> where
K: Debug,
V: Debug,
impl<'_, K, V, S> Debug for RawEntryMut<'_, K, V, S> where
K: Debug,
V: Debug,
sourceimpl<'a, P> Debug for SplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for SplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.34.0 · sourceimpl<'a> Debug for EscapeDefault<'a>
impl<'a> Debug for EscapeDefault<'a>
1.34.0 · sourceimpl Debug for CharTryFromError
impl Debug for CharTryFromError
1.13.0 · sourceimpl Debug for BorrowMutError
impl Debug for BorrowMutError
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
1.26.0 · sourceimpl<Idx> Debug for RangeToInclusive<Idx> where
Idx: Debug,
impl<Idx> Debug for RangeToInclusive<Idx> where
Idx: Debug,
sourceimpl<Y, R> Debug for GeneratorState<Y, R> where
Y: Debug,
R: Debug,
impl<Y, R> Debug for GeneratorState<Y, R> where
Y: Debug,
R: Debug,
sourceimpl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T1: Debug,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T1: Debug,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.31.0 · sourceimpl<'a, T> Debug for RChunksExact<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for RChunksExact<'a, T> where
T: 'a + Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
sourceimpl<'a, 'b> Debug for StrSearcher<'a, 'b>
impl<'a, 'b> Debug for StrSearcher<'a, 'b>
1.17.0 · sourceimpl<'_> Debug for EncodeUtf16<'_>
impl<'_> Debug for EncodeUtf16<'_>
sourceimpl<'a> Debug for CharSearcher<'a>
impl<'a> Debug for CharSearcher<'a>
1.5.0 · sourceimpl<'a, P> Debug for RMatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RMatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
sourceimpl<'a, T, const N: usize> Debug for ArrayChunksMut<'a, T, N> where
T: 'a + Debug,
impl<'a, T, const N: usize> Debug for ArrayChunksMut<'a, T, N> where
T: 'a + Debug,
1.5.0 · sourceimpl<'a, P> Debug for MatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for MatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
1.34.0 · sourceimpl<'a> Debug for EscapeDebug<'a>
impl<'a> Debug for EscapeDebug<'a>
1.29.0 · sourceimpl<I, U> Debug for Flatten<I> where
I: Debug + Iterator,
U: Debug + Iterator,
<I as Iterator>::Item: IntoIterator,
<<I as Iterator>::Item as IntoIterator>::IntoIter == U,
<<I as Iterator>::Item as IntoIterator>::Item == <U as Iterator>::Item,
impl<I, U> Debug for Flatten<I> where
I: Debug + Iterator,
U: Debug + Iterator,
<I as Iterator>::Item: IntoIterator,
<<I as Iterator>::Item as IntoIterator>::IntoIter == U,
<<I as Iterator>::Item as IntoIterator>::Item == <U as Iterator>::Item,
1.60.0 · sourceimpl<'a> Debug for EscapeAscii<'a>
impl<'a> Debug for EscapeAscii<'a>
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
sourceimpl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T0: Debug,
T1: Debug,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T0: Debug,
T1: Debug,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
sourceimpl<'a, 'b> Debug for CharSliceSearcher<'a, 'b>
impl<'a, 'b> Debug for CharSliceSearcher<'a, 'b>
1.28.0 · sourceimpl Debug for NonZeroU64
impl Debug for NonZeroU64
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
1.31.0 · sourceimpl<'a, T> Debug for RChunksMut<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for RChunksMut<'a, T> where
T: 'a + Debug,
1.26.0 · sourceimpl<Idx> Debug for RangeInclusive<Idx> where
Idx: Debug,
impl<Idx> Debug for RangeInclusive<Idx> where
Idx: Debug,
1.34.0 · sourceimpl Debug for Infallible
impl Debug for Infallible
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
sourceimpl<Dyn> Debug for DynMetadata<Dyn> where
Dyn: ?Sized,
impl<Dyn> Debug for DynMetadata<Dyn> where
Dyn: ?Sized,
1.34.0 · sourceimpl Debug for NonZeroI16
impl Debug for NonZeroI16
sourceimpl<T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
1.51.0 · sourceimpl<'_, T, P> Debug for SplitInclusive<'_, T, P> where
T: Debug,
P: FnMut(&T) -> bool,
impl<'_, T, P> Debug for SplitInclusive<'_, T, P> where
T: Debug,
P: FnMut(&T) -> bool,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F> Debug for unsafe extern "C" fn(A, B, C, D, E, F, ...) -> Ret
impl<Ret, A, B, C, D, E, F> Debug for unsafe extern "C" fn(A, B, C, D, E, F, ...) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H) -> Ret
impl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H) -> Ret
1.28.0 · sourceimpl Debug for NonZeroU16
impl Debug for NonZeroU16
sourceimpl<I, G> Debug for IntersperseWith<I, G> where
I: Iterator + Debug,
G: Debug,
<I as Iterator>::Item: Debug,
impl<I, G> Debug for IntersperseWith<I, G> where
I: Iterator + Debug,
G: Debug,
<I as Iterator>::Item: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H) -> Ret
impl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
1.28.0 · sourceimpl Debug for NonZeroUsize
impl Debug for NonZeroUsize
sourceimpl<'a, T, P> Debug for GroupByMut<'a, T, P> where
T: 'a + Debug,
impl<'a, T, P> Debug for GroupByMut<'a, T, P> where
T: 'a + Debug,
1.27.0 · sourceimpl Debug for CpuidResult
impl Debug for CpuidResult
1.9.0 · sourceimpl<H> Debug for BuildHasherDefault<H>
impl<H> Debug for BuildHasherDefault<H>
sourceimpl<T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T4, T5, T6, T7, T8, T9, T10, T11) where
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T4, T5, T6, T7, T8, T9, T10, T11) where
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.28.0 · sourceimpl<F> Debug for RepeatWith<F> where
F: Debug,
impl<F> Debug for RepeatWith<F> where
F: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
1.55.0 · sourceimpl Debug for IntErrorKind
impl Debug for IntErrorKind
sourceimpl<I> Debug for Intersperse<I> where
I: Debug + Iterator,
<I as Iterator>::Item: Clone,
<I as Iterator>::Item: Debug,
impl<I> Debug for Intersperse<I> where
I: Debug + Iterator,
<I as Iterator>::Item: Clone,
<I as Iterator>::Item: Debug,
sourceimpl<'a, const N: usize> Debug for CharArraySearcher<'a, N>
impl<'a, const N: usize> Debug for CharArraySearcher<'a, N>
1.34.0 · sourceimpl<'a> Debug for EscapeUnicode<'a>
impl<'a> Debug for EscapeUnicode<'a>
sourceimpl<'a, P> Debug for SplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for SplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.13.0 · sourceimpl Debug for BorrowError
impl Debug for BorrowError
1.31.0 · sourceimpl<'a, T> Debug for RChunksExactMut<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for RChunksExactMut<'a, T> where
T: 'a + Debug,
sourceimpl Debug for FromFloatSecsError
impl Debug for FromFloatSecsError
sourceimpl<'a> Debug for CharIndices<'a>
impl<'a> Debug for CharIndices<'a>
1.20.0 · sourceimpl Debug for ParseCharError
impl Debug for ParseCharError
1.34.0 · sourceimpl<T, F> Debug for Successors<T, F> where
T: Debug,
impl<T, F> Debug for Successors<T, F> where
T: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
1.34.0 · sourceimpl Debug for NonZeroI128
impl Debug for NonZeroI128
sourceimpl<T, const LANES: usize> Debug for Simd<T, LANES> where
T: SimdElement + Debug,
LaneCount<LANES>: SupportedLaneCount,
impl<T, const LANES: usize> Debug for Simd<T, LANES> where
T: SimdElement + Debug,
LaneCount<LANES>: SupportedLaneCount,
sourceimpl<T, const LANES: usize> Debug for Mask<T, LANES> where
T: MaskElement + Debug,
LaneCount<LANES>: SupportedLaneCount,
impl<T, const LANES: usize> Debug for Mask<T, LANES> where
T: MaskElement + Debug,
LaneCount<LANES>: SupportedLaneCount,
1.50.0 · sourceimpl Debug for LayoutError
impl Debug for LayoutError
1.21.0 · sourceimpl<T> Debug for Discriminant<T>
impl<T> Debug for Discriminant<T>
sourceimpl<'a, T, const N: usize> Debug for ArrayWindows<'a, T, N> where
T: 'a + Debug,
impl<'a, T, const N: usize> Debug for ArrayWindows<'a, T, N> where
T: 'a + Debug,
1.9.0 · sourceimpl<T> Debug for UnsafeCell<T> where
T: ?Sized,
impl<T> Debug for UnsafeCell<T> where
T: ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
1.36.0 · sourceimpl Debug for RawWakerVTable
impl Debug for RawWakerVTable
1.34.0 · sourceimpl Debug for TryFromSliceError
impl Debug for TryFromSliceError
1.34.0 · sourceimpl Debug for NonZeroI64
impl Debug for NonZeroI64
1.9.0 · sourceimpl Debug for DecodeUtf16Error
impl Debug for DecodeUtf16Error
1.3.0 · sourceimpl Debug for AtomicIsize
impl Debug for AtomicIsize
1.16.0 · sourceimpl<T> Debug for AssertUnwindSafe<T> where
T: Debug,
impl<T> Debug for AssertUnwindSafe<T> where
T: Debug,
sourceimpl<T6, T7, T8, T9, T10, T11> Debug for (T6, T7, T8, T9, T10, T11) where
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T6, T7, T8, T9, T10, T11> Debug for (T6, T7, T8, T9, T10, T11) where
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
sourceimpl<'f> Debug for VaListImpl<'f>
impl<'f> Debug for VaListImpl<'f>
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
sourceimpl<T7, T8, T9, T10, T11> Debug for (T7, T8, T9, T10, T11) where
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T7, T8, T9, T10, T11> Debug for (T7, T8, T9, T10, T11) where
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.16.0 · sourceimpl Debug for EscapeDefault
impl Debug for EscapeDefault
1.34.0 · sourceimpl<'a> Debug for SplitAsciiWhitespace<'a>
impl<'a> Debug for SplitAsciiWhitespace<'a>
1.31.0 · sourceimpl<'a, T> Debug for ChunksExact<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for ChunksExact<'a, T> where
T: 'a + Debug,
1.59.0 · sourceimpl Debug for TryFromCharError
impl Debug for TryFromCharError
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G) -> Ret
impl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G) -> Ret
sourceimpl<'a, P> Debug for RSplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RSplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.51.0 · sourceimpl<'_, T, P> Debug for SplitInclusiveMut<'_, T, P> where
T: Debug,
P: FnMut(&T) -> bool,
impl<'_, T, P> Debug for SplitInclusiveMut<'_, T, P> where
T: Debug,
P: FnMut(&T) -> bool,
1.51.0 · sourceimpl<'a, P> Debug for SplitInclusive<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for SplitInclusive<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
sourceimpl<'a, 'b, const N: usize> Debug for CharArrayRefSearcher<'a, 'b, N>
impl<'a, 'b, const N: usize> Debug for CharArrayRefSearcher<'a, 'b, N>
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
1.41.0 · sourceimpl<T> Debug for MaybeUninit<T>
impl<T> Debug for MaybeUninit<T>
1.28.0 · sourceimpl Debug for NonZeroU32
impl Debug for NonZeroU32
1.3.0 · sourceimpl Debug for AtomicBool
impl Debug for AtomicBool
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G> Debug for extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G> Debug for extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
1.2.0 · sourceimpl<'a, P> Debug for Matches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for Matches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe fn(A, B, C, D, E, F, G, H, I) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe fn(A, B, C, D, E, F, G, H, I) -> Ret
1.20.0 · sourceimpl Debug for EscapeDebug
impl Debug for EscapeDebug
1.3.0 · sourceimpl Debug for AtomicUsize
impl Debug for AtomicUsize
1.28.0 · sourceimpl Debug for NonZeroU128
impl Debug for NonZeroU128
1.9.0 · sourceimpl<I, U, F> Debug for FlatMap<I, U, F> where
I: Debug,
U: IntoIterator,
<U as IntoIterator>::IntoIter: Debug,
impl<I, U, F> Debug for FlatMap<I, U, F> where
I: Debug,
U: IntoIterator,
<U as IntoIterator>::IntoIter: Debug,
sourceimpl<T8, T9, T10, T11> Debug for (T8, T9, T10, T11) where
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T8, T9, T10, T11> Debug for (T8, T9, T10, T11) where
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
sourceimpl<'a, T, const N: usize> Debug for ArrayChunks<'a, T, N> where
T: 'a + Debug,
impl<'a, T, const N: usize> Debug for ArrayChunks<'a, T, N> where
T: 'a + Debug,
sourceimpl<T5, T6, T7, T8, T9, T10, T11> Debug for (T5, T6, T7, T8, T9, T10, T11) where
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T5, T6, T7, T8, T9, T10, T11> Debug for (T5, T6, T7, T8, T9, T10, T11) where
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J) -> Ret
1.34.0 · sourceimpl Debug for TryFromIntError
impl Debug for TryFromIntError
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
1.55.0 · sourceimpl<B, C> Debug for ControlFlow<B, C> where
B: Debug,
C: Debug,
impl<B, C> Debug for ControlFlow<B, C> where
B: Debug,
C: Debug,
1.31.0 · sourceimpl<'a, T> Debug for ChunksExactMut<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for ChunksExactMut<'a, T> where
T: 'a + Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
1.34.0 · sourceimpl Debug for NonZeroIsize
impl Debug for NonZeroIsize
1.34.0 · sourceimpl Debug for NonZeroI32
impl Debug for NonZeroI32
1.1.0 · sourceimpl<'a> Debug for SplitWhitespace<'a>
impl<'a> Debug for SplitWhitespace<'a>
sourceimpl<T> Debug for Saturating<T> where
T: Debug,
impl<T> Debug for Saturating<T> where
T: Debug,
sourceimpl<T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.2.0 · sourceimpl<'a, P> Debug for RMatches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RMatches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
sourceimpl<'a, P> Debug for RSplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RSplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
sourceimpl<'a, P> Debug for RSplit<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RSplit<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for fn(A, B, C, D, E, F, G, H, I, J) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for fn(A, B, C, D, E, F, G, H, I, J) -> Ret
sourceimpl<'a> Debug for Utf8LossyChunk<'a>
impl<'a> Debug for Utf8LossyChunk<'a>
1.20.0 · sourceimpl<T> Debug for ManuallyDrop<T> where
T: Debug + ?Sized,
impl<T> Debug for ManuallyDrop<T> where
T: Debug + ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
1.17.0 · sourceimpl<'_, T> Debug for Difference<'_, T> where
T: Debug,
impl<'_, T> Debug for Difference<'_, T> where
T: Debug,
sourceimpl<T> Debug for LinkedList<T> where
T: Debug,
impl<T> Debug for LinkedList<T> where
T: Debug,
1.4.0 · sourceimpl<T> Debug for BinaryHeap<T> where
T: Debug,
impl<T> Debug for BinaryHeap<T> where
T: Debug,
1.12.0 · sourceimpl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug + Ord,
impl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug + Ord,
sourceimpl<T> Debug for IntoIterSorted<T> where
T: Debug,
impl<T> Debug for IntoIterSorted<T> where
T: Debug,
1.21.0 · sourceimpl<'a, I, A> Debug for Splice<'a, I, A> where
I: 'a + Debug + Iterator,
A: 'a + Debug + Allocator,
<I as Iterator>::Item: Debug,
impl<'a, I, A> Debug for Splice<'a, I, A> where
I: 'a + Debug + Iterator,
A: 'a + Debug + Allocator,
<I as Iterator>::Item: Debug,
sourceimpl<'_, B> Debug for Cow<'_, B> where
B: Debug + ToOwned + ?Sized,
<B as ToOwned>::Owned: Debug,
impl<'_, B> Debug for Cow<'_, B> where
B: Debug + ToOwned + ?Sized,
<B as ToOwned>::Owned: Debug,
1.54.0 · sourceimpl<K, V> Debug for IntoValues<K, V> where
V: Debug,
impl<K, V> Debug for IntoValues<K, V> where
V: Debug,
1.57.0 · sourceimpl Debug for TryReserveError
impl Debug for TryReserveError
sourceimpl Debug for TryReserveErrorKind
impl Debug for TryReserveErrorKind
sourceimpl<'a, T> Debug for DrainSorted<'a, T> where
T: Debug + Ord,
impl<'a, T> Debug for DrainSorted<'a, T> where
T: Debug + Ord,
sourceimpl<'_, K, V, F> Debug for DrainFilter<'_, K, V, F> where
K: Debug,
V: Debug,
F: FnMut(&K, &mut V) -> bool,
impl<'_, K, V, F> Debug for DrainFilter<'_, K, V, F> where
K: Debug,
V: Debug,
F: FnMut(&K, &mut V) -> bool,
sourceimpl<'a, T, F, A> Debug for DrainFilter<'a, T, F, A> where
T: Debug,
F: Debug + FnMut(&mut T) -> bool,
A: Debug + Allocator,
impl<'a, T, F, A> Debug for DrainFilter<'a, T, F, A> where
T: Debug,
F: Debug + FnMut(&mut T) -> bool,
A: Debug + Allocator,
1.17.0 · sourceimpl<'_, T> Debug for SymmetricDifference<'_, T> where
T: Debug,
impl<'_, T> Debug for SymmetricDifference<'_, T> where
T: Debug,
1.17.0 · sourceimpl<'_, T> Debug for Intersection<'_, T> where
T: Debug,
impl<'_, T> Debug for Intersection<'_, T> where
T: Debug,
sourceimpl Debug for _Unwind_Reason_Code
impl Debug for _Unwind_Reason_Code
sourceimpl Debug for WasmEntryAttributes
impl Debug for WasmEntryAttributes
sourceimpl<T> Debug for WithDispatch<T> where
T: Debug,
impl<T> Debug for WithDispatch<T> where
T: Debug,
sourceimpl<T> Debug for Instrumented<T> where
T: Debug,
impl<T> Debug for Instrumented<T> where
T: Debug,
sourceimpl Debug for ParseLevelFilterError
impl Debug for ParseLevelFilterError
sourceimpl Debug for SetGlobalDefaultError
impl Debug for SetGlobalDefaultError
sourceimpl<T> Debug for DisplayValue<T> where
T: Display,
impl<T> Debug for DisplayValue<T> where
T: Display,
sourceimpl<T> Debug for DebugValue<T> where
T: Debug,
impl<T> Debug for DebugValue<T> where
T: Debug,
sourceimpl<'a> Debug for Attributes<'a>
impl<'a> Debug for Attributes<'a>
sourceimpl Debug for OnceNonZeroUsize
impl Debug for OnceNonZeroUsize
sourceimpl<T> Debug for CapacityError<T>
impl<T> Debug for CapacityError<T>
sourceimpl<const CAP: usize> Debug for ArrayString<CAP>
impl<const CAP: usize> Debug for ArrayString<CAP>
sourceimpl<'a, T, O> Debug for RChunksExact<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for RChunksExact<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'_, T, O, P> Debug for Split<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for Split<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<R> Debug for BitEnd<R> where
R: BitRegister,
impl<R> Debug for BitEnd<R> where
R: BitRegister,
sourceimpl<T> Debug for MisalignError<T>
impl<T> Debug for MisalignError<T>
sourceimpl<'a, T, O> Debug for ChunksMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
impl<'a, T, O> Debug for ChunksMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
sourceimpl<R> Debug for BitIdx<R> where
R: BitRegister,
impl<R> Debug for BitIdx<R> where
R: BitRegister,
sourceimpl<'a, T, O> Debug for IterZeros<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for IterZeros<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'a, T, O, I> Debug for Splice<'a, T, O, I> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
I: Debug + Iterator<Item = bool>,
impl<'a, T, O, I> Debug for Splice<'a, T, O, I> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
I: Debug + Iterator<Item = bool>,
sourceimpl<'a, M, T, O> Debug for Domain<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
Address<M, T>: Referential<'a>,
Address<M, [<T as BitStore>::Unalias]>: SliceReferential<'a>,
<Address<M, [<T as BitStore>::Unalias]> as Referential<'a>>::Ref: Debug,
impl<'a, M, T, O> Debug for Domain<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
Address<M, T>: Referential<'a>,
Address<M, [<T as BitStore>::Unalias]>: SliceReferential<'a>,
<Address<M, [<T as BitStore>::Unalias]> as Referential<'a>>::Ref: Debug,
sourceimpl<'a, T, O> Debug for RChunksExactMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
impl<'a, T, O> Debug for RChunksExactMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
sourceimpl<'_, T, O, P> Debug for RSplit<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for RSplit<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<R> Debug for BitPos<R> where
R: BitRegister,
impl<R> Debug for BitPos<R> where
R: BitRegister,
sourceimpl<'_, T, O, P> Debug for SplitMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<'a, T, O> Debug for RChunksMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
impl<'a, T, O> Debug for RChunksMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
sourceimpl<'_, T, O, P> Debug for RSplitN<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for RSplitN<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<R> Debug for BitSel<R> where
R: BitRegister,
impl<R> Debug for BitSel<R> where
R: BitRegister,
sourceimpl<A, O> Debug for BitArray<A, O> where
A: BitViewSized,
O: BitOrder,
impl<A, O> Debug for BitArray<A, O> where
A: BitViewSized,
O: BitOrder,
sourceimpl<'a, T, O> Debug for Chunks<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for Chunks<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<R> Debug for BitIdxError<R> where
R: BitRegister,
impl<R> Debug for BitIdxError<R> where
R: BitRegister,
sourceimpl<'a, T, O> Debug for ChunksExactMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
impl<'a, T, O> Debug for ChunksExactMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
sourceimpl<A, O> Debug for IntoIter<A, O> where
A: BitViewSized,
O: BitOrder,
impl<A, O> Debug for IntoIter<A, O> where
A: BitViewSized,
O: BitOrder,
sourceimpl<'_, T, O, P> Debug for SplitN<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitN<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<M, T, O> Debug for BitPtrRange<M, T, O> where
M: Mutability,
T: BitStore,
O: BitOrder,
impl<M, T, O> Debug for BitPtrRange<M, T, O> where
M: Mutability,
T: BitStore,
O: BitOrder,
sourceimpl<'_, T, O, P> Debug for RSplitNMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for RSplitNMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<'a, M, T, O> Debug for PartialElement<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
impl<'a, M, T, O> Debug for PartialElement<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
sourceimpl<'a, T, O> Debug for IterOnes<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for IterOnes<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'_, T, O, P> Debug for SplitNMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitNMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<'a, M, T, O> Debug for BitDomain<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
Address<M, BitSlice<T, O>>: Referential<'a>,
Address<M, BitSlice<<T as BitStore>::Unalias, O>>: Referential<'a>,
<Address<M, BitSlice<T, O>> as Referential<'a>>::Ref: Debug,
<Address<M, BitSlice<<T as BitStore>::Unalias, O>> as Referential<'a>>::Ref: Debug,
impl<'a, M, T, O> Debug for BitDomain<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
Address<M, BitSlice<T, O>>: Referential<'a>,
Address<M, BitSlice<<T as BitStore>::Unalias, O>>: Referential<'a>,
<Address<M, BitSlice<T, O>> as Referential<'a>>::Ref: Debug,
<Address<M, BitSlice<<T as BitStore>::Unalias, O>> as Referential<'a>>::Ref: Debug,
sourceimpl<'a, T, O> Debug for Windows<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for Windows<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'a, T, O> Debug for ChunksExact<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for ChunksExact<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<T> Debug for BitPtrError<T> where
T: Debug + BitStore,
impl<T> Debug for BitPtrError<T> where
T: Debug + BitStore,
sourceimpl<'_, M, T, O> Debug for BitRef<'_, M, T, O> where
M: Mutability,
T: BitStore,
O: BitOrder,
impl<'_, M, T, O> Debug for BitRef<'_, M, T, O> where
M: Mutability,
T: BitStore,
O: BitOrder,
sourceimpl<R> Debug for BitMask<R> where
R: BitRegister,
impl<R> Debug for BitMask<R> where
R: BitRegister,
sourceimpl<'a, T, O> Debug for RChunks<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for RChunks<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'_, T, O, P> Debug for RSplitMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for RSplitMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<T> Debug for BitSpanError<T> where
T: BitStore,
impl<T> Debug for BitSpanError<T> where
T: BitStore,
sourceimpl<'_, T, O, P> Debug for SplitInclusiveMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitInclusiveMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<'_, T, O, P> Debug for SplitInclusive<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitInclusive<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<M, T> Debug for Address<M, T> where
M: Mutability,
T: ?Sized,
impl<M, T> Debug for Address<M, T> where
M: Mutability,
T: ?Sized,
sourceimpl<T> Debug for FmtLowerExp<T> where
T: LowerExp,
impl<T> Debug for FmtLowerExp<T> where
T: LowerExp,
sourceimpl<T> Debug for FmtLowerHex<T> where
T: LowerHex,
impl<T> Debug for FmtLowerHex<T> where
T: LowerHex,
sourceimpl<T> Debug for FmtUpperHex<T> where
T: UpperHex,
impl<T> Debug for FmtUpperHex<T> where
T: UpperHex,
sourceimpl<T> Debug for FmtPointer<T> where
T: Pointer,
impl<T> Debug for FmtPointer<T> where
T: Pointer,
sourceimpl<T> Debug for FmtDisplay<T> where
T: Display,
impl<T> Debug for FmtDisplay<T> where
T: Display,
sourceimpl<Inner> Debug for Frozen<Inner> where
Inner: Debug + Mutability,
impl<Inner> Debug for Frozen<Inner> where
Inner: Debug + Mutability,
sourceimpl<T> Debug for FmtUpperExp<T> where
T: UpperExp,
impl<T> Debug for FmtUpperExp<T> where
T: UpperExp,
sourceimpl<T> Debug for FmtList<T> where
&'a T: for<'a> IntoIterator,
<&'a T as IntoIterator>::Item: for<'a> Debug,
impl<T> Debug for FmtList<T> where
&'a T: for<'a> IntoIterator,
<&'a T as IntoIterator>::Item: for<'a> Debug,
sourceimpl<E> Debug for StringDeserializer<E>
impl<E> Debug for StringDeserializer<E>
sourceimpl<E> Debug for U32Deserializer<E>
impl<E> Debug for U32Deserializer<E>
sourceimpl<'de, I, E> Debug for MapDeserializer<'de, I, E> where
I: Iterator + Debug,
<I as Iterator>::Item: Pair,
<<I as Iterator>::Item as Pair>::Second: Debug,
impl<'de, I, E> Debug for MapDeserializer<'de, I, E> where
I: Iterator + Debug,
<I as Iterator>::Item: Pair,
<<I as Iterator>::Item as Pair>::Second: Debug,
sourceimpl<E> Debug for BoolDeserializer<E>
impl<E> Debug for BoolDeserializer<E>
sourceimpl<E> Debug for CharDeserializer<E>
impl<E> Debug for CharDeserializer<E>
sourceimpl<E> Debug for U128Deserializer<E>
impl<E> Debug for U128Deserializer<E>
sourceimpl<'a> Debug for Unexpected<'a>
impl<'a> Debug for Unexpected<'a>
sourceimpl<I, E> Debug for SeqDeserializer<I, E> where
I: Debug,
impl<I, E> Debug for SeqDeserializer<I, E> where
I: Debug,
sourceimpl<E> Debug for I128Deserializer<E>
impl<E> Debug for I128Deserializer<E>
sourceimpl<E> Debug for I32Deserializer<E>
impl<E> Debug for I32Deserializer<E>
sourceimpl<E> Debug for U64Deserializer<E>
impl<E> Debug for U64Deserializer<E>
sourceimpl<E> Debug for I64Deserializer<E>
impl<E> Debug for I64Deserializer<E>
sourceimpl<E> Debug for F64Deserializer<E>
impl<E> Debug for F64Deserializer<E>
sourceimpl<E> Debug for UnitDeserializer<E>
impl<E> Debug for UnitDeserializer<E>
sourceimpl<E> Debug for F32Deserializer<E>
impl<E> Debug for F32Deserializer<E>
sourceimpl<'a, E> Debug for CowStrDeserializer<'a, E>
impl<'a, E> Debug for CowStrDeserializer<'a, E>
sourceimpl<'de, E> Debug for BorrowedStrDeserializer<'de, E>
impl<'de, E> Debug for BorrowedStrDeserializer<'de, E>
sourceimpl<A> Debug for SeqAccessDeserializer<A> where
A: Debug,
impl<A> Debug for SeqAccessDeserializer<A> where
A: Debug,
sourceimpl<'a, E> Debug for StrDeserializer<'a, E>
impl<'a, E> Debug for StrDeserializer<'a, E>
sourceimpl<A> Debug for MapAccessDeserializer<A> where
A: Debug,
impl<A> Debug for MapAccessDeserializer<A> where
A: Debug,
sourceimpl<E> Debug for U16Deserializer<E>
impl<E> Debug for U16Deserializer<E>
sourceimpl<E> Debug for I8Deserializer<E>
impl<E> Debug for I8Deserializer<E>
sourceimpl<'de, E> Debug for BorrowedBytesDeserializer<'de, E>
impl<'de, E> Debug for BorrowedBytesDeserializer<'de, E>
sourceimpl<'a, E> Debug for BytesDeserializer<'a, E>
impl<'a, E> Debug for BytesDeserializer<'a, E>
sourceimpl<E> Debug for I16Deserializer<E>
impl<E> Debug for I16Deserializer<E>
sourceimpl<E> Debug for UsizeDeserializer<E>
impl<E> Debug for UsizeDeserializer<E>
sourceimpl<E> Debug for IsizeDeserializer<E>
impl<E> Debug for IsizeDeserializer<E>
sourceimpl<E> Debug for U8Deserializer<E>
impl<E> Debug for U8Deserializer<E>
sourceimpl<E> Debug for FormattedFields<E>
impl<E> Debug for FormattedFields<E>
sourceimpl<S, F, R> Debug for DynFilterFn<S, F, R>
impl<S, F, R> Debug for DynFilterFn<S, F, R>
sourceimpl<M> Debug for WithMinLevel<M> where
M: Debug,
impl<M> Debug for WithMinLevel<M> where
M: Debug,
sourceimpl<'a> Debug for ExtensionsMut<'a>
impl<'a> Debug for ExtensionsMut<'a>
sourceimpl<N, E, F, W> Debug for Subscriber<N, E, F, W> where
N: Debug,
E: Debug,
F: Debug,
W: Debug,
impl<N, E, F, W> Debug for Subscriber<N, E, F, W> where
N: Debug,
E: Debug,
F: Debug,
W: Debug,
sourceimpl<'a, S, N> Debug for FmtContext<'a, S, N>
impl<'a, S, N> Debug for FmtContext<'a, S, N>
sourceimpl<'a> Debug for JsonVisitor<'a>
impl<'a> Debug for JsonVisitor<'a>
sourceimpl<M, F> Debug for WithFilter<M, F> where
M: Debug,
F: Debug,
impl<M, F> Debug for WithFilter<M, F> where
M: Debug,
F: Debug,
sourceimpl<'a, R> Debug for FromRoot<'a, R> where
R: Debug + LookupSpan<'a>,
impl<'a, R> Debug for FromRoot<'a, R> where
R: Debug + LookupSpan<'a>,
sourceimpl<'a, R> Debug for SpanRef<'a, R> where
R: Debug + LookupSpan<'a>,
<R as LookupSpan<'a>>::Data: Debug,
impl<'a, R> Debug for SpanRef<'a, R> where
R: Debug + LookupSpan<'a>,
<R as LookupSpan<'a>>::Data: Debug,
sourceimpl<'a, R> Debug for ScopeFromRoot<'a, R> where
R: LookupSpan<'a>,
impl<'a, R> Debug for ScopeFromRoot<'a, R> where
R: LookupSpan<'a>,
sourceimpl<'a> Debug for Extensions<'a>
impl<'a> Debug for Extensions<'a>
sourceimpl<D, V> Debug for VisitDelimited<D, V> where
D: Debug,
V: Debug,
impl<D, V> Debug for VisitDelimited<D, V> where
D: Debug,
V: Debug,
sourceimpl<'a, L> Debug for Scope<'a, L> where
L: Debug + LookupSpan<'a>,
impl<'a, L> Debug for Scope<'a, L> where
L: Debug + LookupSpan<'a>,
sourceimpl<'a> Debug for DefaultVisitor<'a>
impl<'a> Debug for DefaultVisitor<'a>
sourceimpl<N, E, F, W> Debug for SubscriberBuilder<N, E, F, W> where
N: Debug,
E: Debug,
F: Debug,
W: Debug,
impl<N, E, F, W> Debug for SubscriberBuilder<N, E, F, W> where
N: Debug,
E: Debug,
F: Debug,
W: Debug,
sourceimpl<'a, F> Debug for FieldFnVisitor<'a, F>
impl<'a, F> Debug for FieldFnVisitor<'a, F>
sourceimpl<A, B> Debug for EitherWriter<A, B> where
A: Debug,
B: Debug,
impl<A, B> Debug for EitherWriter<A, B> where
A: Debug,
B: Debug,
sourceimpl<M> Debug for WithMaxLevel<M> where
M: Debug,
impl<M> Debug for WithMaxLevel<M> where
M: Debug,
sourceimpl<'a> Debug for PrettyVisitor<'a>
impl<'a> Debug for PrettyVisitor<'a>
sourceimpl<'a, R> Debug for ReplacerRef<'a, R> where
R: Debug + ?Sized,
impl<'a, R> Debug for ReplacerRef<'a, R> where
R: Debug + ?Sized,
sourceimpl<'c, 't> Debug for SubCaptureMatches<'c, 't>
impl<'c, 't> Debug for SubCaptureMatches<'c, 't>
sourceimpl Debug for SetMatchesIntoIter
impl Debug for SetMatchesIntoIter
sourceimpl Debug for SetMatchesIntoIter
impl Debug for SetMatchesIntoIter
sourceimpl<'c, 't> Debug for SubCaptureMatches<'c, 't>
impl<'c, 't> Debug for SubCaptureMatches<'c, 't>
sourceimpl Debug for CaptureLocations
impl Debug for CaptureLocations
sourceimpl Debug for CaptureLocations
impl Debug for CaptureLocations
sourceimpl<'a> Debug for SetMatchesIter<'a>
impl<'a> Debug for SetMatchesIter<'a>
sourceimpl<'r> Debug for CaptureNames<'r>
impl<'r> Debug for CaptureNames<'r>
sourceimpl<'r, 't> Debug for CaptureMatches<'r, 't>
impl<'r, 't> Debug for CaptureMatches<'r, 't>
sourceimpl<'a> Debug for SetMatchesIter<'a>
impl<'a> Debug for SetMatchesIter<'a>
sourceimpl<'r> Debug for CaptureNames<'r>
impl<'r> Debug for CaptureNames<'r>
sourceimpl<'a, R> Debug for ReplacerRef<'a, R> where
R: Debug + ?Sized,
impl<'a, R> Debug for ReplacerRef<'a, R> where
R: Debug + ?Sized,
sourceimpl<'r, 't> Debug for CaptureMatches<'r, 't>
impl<'r, 't> Debug for CaptureMatches<'r, 't>
sourceimpl Debug for TranslatorBuilder
impl Debug for TranslatorBuilder
sourceimpl<'a> Debug for ClassUnicodeIter<'a>
impl<'a> Debug for ClassUnicodeIter<'a>
sourceimpl Debug for UnicodeWordError
impl Debug for UnicodeWordError
sourceimpl Debug for ClassUnicodeOpKind
impl Debug for ClassUnicodeOpKind
sourceimpl<'a> Debug for ClassBytesIter<'a>
impl<'a> Debug for ClassBytesIter<'a>
sourceimpl Debug for SpecialLiteralKind
impl Debug for SpecialLiteralKind
sourceimpl Debug for ClassSetBinaryOp
impl Debug for ClassSetBinaryOp
sourceimpl Debug for ClassSetBinaryOpKind
impl Debug for ClassSetBinaryOpKind
sourceimpl Debug for ClassUnicodeKind
impl Debug for ClassUnicodeKind
sourceimpl Debug for ClassUnicodeRange
impl Debug for ClassUnicodeRange
sourceimpl<'a, 'b, S> Debug for FindOverlappingIter<'a, 'b, S> where
S: Debug + StateID,
impl<'a, 'b, S> Debug for FindOverlappingIter<'a, 'b, S> where
S: Debug + StateID,
sourceimpl<S> Debug for AhoCorasick<S> where
S: Debug + StateID,
impl<S> Debug for AhoCorasick<S> where
S: Debug + StateID,
sourceimpl Debug for AhoCorasickBuilder
impl Debug for AhoCorasickBuilder
sourceimpl<'h, 'n> Debug for FindRevIter<'h, 'n>
impl<'h, 'n> Debug for FindRevIter<'h, 'n>
sourceimpl<T, S> Debug for PremultipliedByteClass<T, S> where
T: Debug + AsRef<[S]>,
S: Debug + StateID,
impl<T, S> Debug for PremultipliedByteClass<T, S> where
T: Debug + AsRef<[S]>,
S: Debug + StateID,
sourceimpl Debug for Style
impl Debug for Style
Styles have a special Debug implementation that only shows the fields that
are set. Fields that haven’t been touched aren’t included in the output.
This behaviour gets bypassed when using the alternate formatting mode
format!("{:#?}").
use ansi_term::Colour::{Red, Blue};
assert_eq!("Style { fg(Red), on(Blue), bold, italic }",
format!("{:?}", Red.on(Blue).bold().italic()));sourceimpl<'a, S> Debug for ANSIGenericStrings<'a, S> where
S: 'a + Debug + ToOwned + PartialEq<S> + ?Sized,
<S as ToOwned>::Owned: Debug,
impl<'a, S> Debug for ANSIGenericStrings<'a, S> where
S: 'a + Debug + ToOwned + PartialEq<S> + ?Sized,
<S as ToOwned>::Owned: Debug,
sourceimpl<'a, S> Debug for ANSIGenericString<'a, S> where
S: 'a + Debug + ToOwned + ?Sized,
<S as ToOwned>::Owned: Debug,
impl<'a, S> Debug for ANSIGenericString<'a, S> where
S: 'a + Debug + ToOwned + ?Sized,
<S as ToOwned>::Owned: Debug,
sourceimpl<'a> Debug for MetadataBuilder<'a>
impl<'a> Debug for MetadataBuilder<'a>
sourceimpl<'a> Debug for RecordBuilder<'a>
impl<'a> Debug for RecordBuilder<'a>
sourceimpl Debug for CompactFormatter
impl Debug for CompactFormatter
sourceimpl<'a> Debug for PrettyFormatter<'a>
impl<'a> Debug for PrettyFormatter<'a>
sourceimpl<'_, K, V> Debug for OccupiedEntry<'_, K, V> where
K: Debug,
V: Debug,
impl<'_, K, V> Debug for OccupiedEntry<'_, K, V> where
K: Debug,
V: Debug,
sourceimpl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
sourceimpl<K, V> Debug for IntoValues<K, V> where
V: Debug,
impl<K, V> Debug for IntoValues<K, V> where
V: Debug,
sourceimpl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug,
impl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug,
sourceimpl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
sourceimpl<'_, T, S1, S2> Debug for SymmetricDifference<'_, T, S1, S2> where
T: Debug + Eq + Hash,
S1: BuildHasher,
S2: BuildHasher,
impl<'_, T, S1, S2> Debug for SymmetricDifference<'_, T, S1, S2> where
T: Debug + Eq + Hash,
S1: BuildHasher,
S2: BuildHasher,
sourceimpl<'_, T, S, A> Debug for Intersection<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for Intersection<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
sourceimpl<'_, T, S, A> Debug for Union<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for Union<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
sourceimpl<K, V, S, A> Debug for HashMap<K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<K, V, S, A> Debug for HashMap<K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, A> Debug for Drain<'_, K, V, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, A> Debug for Drain<'_, K, V, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawEntryBuilderMut<'_, K, V, S, A> where
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawEntryBuilderMut<'_, K, V, S, A> where
A: Allocator + Clone,
sourceimpl<'_, '_, K, Q, V, S, A> Debug for VacantEntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
A: Allocator + Clone,
impl<'_, '_, K, Q, V, S, A> Debug for VacantEntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
A: Allocator + Clone,
sourceimpl<'_, T, S, A> Debug for SymmetricDifference<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for SymmetricDifference<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
sourceimpl<'_, '_, K, Q, V, S, A> Debug for OccupiedEntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
V: Debug,
A: Allocator + Clone,
impl<'_, '_, K, Q, V, S, A> Debug for OccupiedEntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for Entry<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for Entry<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, '_, K, Q, V, S, A> Debug for EntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
V: Debug,
A: Allocator + Clone,
impl<'_, '_, K, Q, V, S, A> Debug for EntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for OccupiedError<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for OccupiedError<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for OccupiedEntry<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for OccupiedEntry<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawVacantEntryMut<'_, K, V, S, A> where
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawVacantEntryMut<'_, K, V, S, A> where
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawOccupiedEntryMut<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawOccupiedEntryMut<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for VacantEntry<'_, K, V, S, A> where
K: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for VacantEntry<'_, K, V, S, A> where
K: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawEntryBuilder<'_, K, V, S, A> where
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawEntryBuilder<'_, K, V, S, A> where
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawEntryMut<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawEntryMut<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, T, S, A> Debug for Difference<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for Difference<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
sourceimpl<K, V, A> Debug for IntoValues<K, V, A> where
V: Debug,
A: Allocator + Clone,
impl<K, V, A> Debug for IntoValues<K, V, A> where
V: Debug,
A: Allocator + Clone,
sourceimpl<'a> Debug for SerializeRecord<'a>
impl<'a> Debug for SerializeRecord<'a>
sourceimpl<S> Debug for SerdeMapVisitor<S> where
S: Debug + SerializeMap,
<S as SerializeMap>::Error: Debug,
impl<S> Debug for SerdeMapVisitor<S> where
S: Debug + SerializeMap,
<S as SerializeMap>::Error: Debug,
sourceimpl<'a> Debug for SerializeLevel<'a>
impl<'a> Debug for SerializeLevel<'a>
sourceimpl<'a> Debug for SerializeEvent<'a>
impl<'a> Debug for SerializeEvent<'a>
sourceimpl<'a> Debug for SerializeMetadata<'a>
impl<'a> Debug for SerializeMetadata<'a>
sourceimpl<'a, T> Debug for SerializeFieldMap<'a, T> where
T: Debug,
impl<'a, T> Debug for SerializeFieldMap<'a, T> where
T: Debug,
sourceimpl<'a> Debug for SerializeAttributes<'a>
impl<'a> Debug for SerializeAttributes<'a>
sourceimpl<'a> Debug for SerializeId<'a>
impl<'a> Debug for SerializeId<'a>
sourceimpl<'a> Debug for SerializeFieldSet<'a>
impl<'a> Debug for SerializeFieldSet<'a>
sourceimpl<S> Debug for SerdeStructVisitor<S> where
S: Debug + SerializeStruct,
<S as SerializeStruct>::Error: Debug,
impl<S> Debug for SerdeStructVisitor<S> where
S: Debug + SerializeStruct,
<S as SerializeStruct>::Error: Debug,
sourceimpl<T, C> Debug for OwnedEntry<T, C> where
T: Debug,
C: Config,
impl<T, C> Debug for OwnedEntry<T, C> where
T: Debug,
C: Config,
sourceimpl<T> Debug for ThreadLocal<T> where
T: Send + Debug,
impl<T> Debug for ThreadLocal<T> where
T: Send + Debug,
sourceimpl<T> Debug for CachedThreadLocal<T> where
T: Send + Debug,
impl<T> Debug for CachedThreadLocal<T> where
T: Send + Debug,
sourceimpl Debug for CollectionAllocErr
impl Debug for CollectionAllocErr
sourceimpl Debug for NaiveDate
impl Debug for NaiveDate
The Debug output of the naive date d is the same as
d.format("%Y-%m-%d").
The string printed can be readily parsed via the parse method on str.
Example
use chrono::NaiveDate;
assert_eq!(format!("{:?}", NaiveDate::from_ymd(2015, 9, 5)), "2015-09-05");
assert_eq!(format!("{:?}", NaiveDate::from_ymd( 0, 1, 1)), "0000-01-01");
assert_eq!(format!("{:?}", NaiveDate::from_ymd(9999, 12, 31)), "9999-12-31");ISO 8601 requires an explicit sign for years before 1 BCE or after 9999 CE.
assert_eq!(format!("{:?}", NaiveDate::from_ymd( -1, 1, 1)), "-0001-01-01");
assert_eq!(format!("{:?}", NaiveDate::from_ymd(10000, 12, 31)), "+10000-12-31");sourceimpl<I> Debug for DelayedFormat<I> where
I: Debug,
impl<I> Debug for DelayedFormat<I> where
I: Debug,
sourceimpl Debug for NaiveDateTime
impl Debug for NaiveDateTime
The Debug output of the naive date and time dt is the same as
dt.format("%Y-%m-%dT%H:%M:%S%.f").
The string printed can be readily parsed via the parse method on str.
It should be noted that, for leap seconds not on the minute boundary, it may print a representation not distinguishable from non-leap seconds. This doesn’t matter in practice, since such leap seconds never happened. (By the time of the first leap second on 1972-06-30, every time zone offset around the world has standardized to the 5-minute alignment.)
Example
use chrono::NaiveDate;
let dt = NaiveDate::from_ymd(2016, 11, 15).and_hms(7, 39, 24);
assert_eq!(format!("{:?}", dt), "2016-11-15T07:39:24");Leap seconds may also be used.
let dt = NaiveDate::from_ymd(2015, 6, 30).and_hms_milli(23, 59, 59, 1_500);
assert_eq!(format!("{:?}", dt), "2015-06-30T23:59:60.500");sourceimpl<T> Debug for LocalResult<T> where
T: Debug,
impl<T> Debug for LocalResult<T> where
T: Debug,
sourceimpl<'a> Debug for StrftimeItems<'a>
impl<'a> Debug for StrftimeItems<'a>
sourceimpl Debug for IsoWeek
impl Debug for IsoWeek
The Debug output of the ISO week w is the same as
d.format("%G-W%V")
where d is any NaiveDate value in that week.
Example
use chrono::{NaiveDate, Datelike};
assert_eq!(format!("{:?}", NaiveDate::from_ymd(2015, 9, 5).iso_week()), "2015-W36");
assert_eq!(format!("{:?}", NaiveDate::from_ymd( 0, 1, 3).iso_week()), "0000-W01");
assert_eq!(format!("{:?}", NaiveDate::from_ymd(9999, 12, 31).iso_week()), "9999-W52");ISO 8601 requires an explicit sign for years before 1 BCE or after 9999 CE.
assert_eq!(format!("{:?}", NaiveDate::from_ymd( 0, 1, 2).iso_week()), "-0001-W52");
assert_eq!(format!("{:?}", NaiveDate::from_ymd(10000, 12, 31).iso_week()), "+10000-W52");sourceimpl Debug for ParseWeekdayError
impl Debug for ParseWeekdayError
sourceimpl Debug for NaiveTime
impl Debug for NaiveTime
The Debug output of the naive time t is the same as
t.format("%H:%M:%S%.f").
The string printed can be readily parsed via the parse method on str.
It should be noted that, for leap seconds not on the minute boundary, it may print a representation not distinguishable from non-leap seconds. This doesn’t matter in practice, since such leap seconds never happened. (By the time of the first leap second on 1972-06-30, every time zone offset around the world has standardized to the 5-minute alignment.)
Example
use chrono::NaiveTime;
assert_eq!(format!("{:?}", NaiveTime::from_hms(23, 56, 4)), "23:56:04");
assert_eq!(format!("{:?}", NaiveTime::from_hms_milli(23, 56, 4, 12)), "23:56:04.012");
assert_eq!(format!("{:?}", NaiveTime::from_hms_micro(23, 56, 4, 1234)), "23:56:04.001234");
assert_eq!(format!("{:?}", NaiveTime::from_hms_nano(23, 56, 4, 123456)), "23:56:04.000123456");Leap seconds may also be used.
assert_eq!(format!("{:?}", NaiveTime::from_hms_milli(6, 59, 59, 1_500)), "06:59:60.500");